package com.LachesismStorm.lachesism.member.mapper;

import com.LachesismStorm.lachesism.member.dto.ConstellationDTO;
import com.LachesismStorm.lachesism.member.vo.*;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

/**
 * @Author: lachesism
 * @Date: 2023/04/09/11:57
 * @Description:
 */
public interface YunOMapper {

    List<String> getEat();

    String getAreaCode(String city, String area);

    void addAreaCode(String city, String area, String code);

    List<StringInfoVO> getFamilyMotto();


    List<MessageVO> getMessageList();


    Answer getAnswer(Integer id);

    List<AnimatedCharacters> getAnimatedCharacterList();

    void addNote(NoteVO note);

    NoteVO getNote(String code);

    Integer checkRepeatCode(NoteVO note);

    void addFileLog(String newFileName, String code);

    String getFilePathByCode(String code);

    List<NoteVO> getFileLogInfo();

    List<NoteVO> getNoteLogInfo();

    void deleteDFile(Integer id);

    void deleteDNote(Integer id);

    List<GoldPrice> getGoldPriceToday(GoldPrice time);

    void addGoldPrice(BigDecimal price);

    List<GoldPrice> getGoldPriceHistory(GoldPrice time);

    BigDecimal getLastPrice(GoldPrice time);

    List<ToDoS> getToDoList(ToDoS todos);

    void updateToDos(ToDoS todos);

    void createToDoThing(ToDoS todos);

    List<Bill> getBillList(Bill bill);

    void updateBill(Bill bill);

    void addBill(Bill bill);

    List<Pasteboard> getPasteboardList(Pasteboard pasteboard);

    void updatePasteboard(Integer id);

    void addPasteboard(Pasteboard pasteboard);

    List<StringInfoVO> getRandomCriminalLaws(Integer type);

    List<StringInfoVO> fuzzyGetCriminalLaw(String info,Integer type);

    List<Word> getWords();

    List<Word> getWordByKeyword(Word word);

    List<Word> getHousekeepingWiki(StringInfoVO keyWord);

    void addHousekeepingWiki(Word word);

    void addMemorandum(MemorandumVO memorandum);

    void updateMemorandum(MemorandumVO memorandum);

    List<MemorandumVO> getMemorandum(MemorandumVO memorandum);

    void addDailyVideo(List<String> videoList);

    List<String> getDailyVideoList();

    void addConstellationList(List<ConstellationVO> todayConstellationList);

    List<SysArea> getAreaList();

    List<ConstellationVO> getConstellationFortuneList();

    void addOldCalendar(ExtLunar extLunar);

    ExtLunar getLunarInfo();

    List<SysSuggestions> getSuggestionList();

    void addSuggestion(SysSuggestions suggestion);
}
